package studia.figlewicz.dao.ejb;

// Generated 2011-06-15 09:11:23 by Hibernate Tools 3.4.0.CR1

import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * Portfele generated by hbm2java
 */
@Entity
@Table(name = "PORTFELE", schema = "MARCIN")
public class Portfele implements java.io.Serializable {

	private String nazwaportfela;
	private String opisportfela;
	private String funkcjaportfela;
	private String numerprocedury;
	private Date datadefinicji;
	private Date datautworzenia;
	private String login;
	private String opis;
	private Set<Sawskladzie> sawskladzies = new HashSet<Sawskladzie>(0);
	private Set<Wycenyportfeli> wycenyportfelis = new HashSet<Wycenyportfeli>(0);
	private Set<Planywycen> planywycens = new HashSet<Planywycen>(0);

	public Portfele() {
	}

	public Portfele(String nazwaportfela) {
		this.nazwaportfela = nazwaportfela;
	}

	public Portfele(String nazwaportfela, String opisportfela,
			String funkcjaportfela, String numerprocedury, Date datadefinicji,
			Date datautworzenia, String login, String opis,
			Set<Sawskladzie> sawskladzies, Set<Wycenyportfeli> wycenyportfelis,
			Set<Planywycen> planywycens) {
		this.nazwaportfela = nazwaportfela;
		this.opisportfela = opisportfela;
		this.funkcjaportfela = funkcjaportfela;
		this.numerprocedury = numerprocedury;
		this.datadefinicji = datadefinicji;
		this.datautworzenia = datautworzenia;
		this.login = login;
		this.opis = opis;
		this.sawskladzies = sawskladzies;
		this.wycenyportfelis = wycenyportfelis;
		this.planywycens = planywycens;
	}

	@Id
	@Column(name = "NAZWAPORTFELA", unique = true, nullable = false, length = 50)
	public String getNazwaportfela() {
		return this.nazwaportfela;
	}

	public void setNazwaportfela(String nazwaportfela) {
		this.nazwaportfela = nazwaportfela;
	}

	@Column(name = "OPISPORTFELA", length = 1000)
	public String getOpisportfela() {
		return this.opisportfela;
	}

	public void setOpisportfela(String opisportfela) {
		this.opisportfela = opisportfela;
	}

	@Column(name = "FUNKCJAPORTFELA", length = 100)
	public String getFunkcjaportfela() {
		return this.funkcjaportfela;
	}

	public void setFunkcjaportfela(String funkcjaportfela) {
		this.funkcjaportfela = funkcjaportfela;
	}

	@Column(name = "NUMERPROCEDURY", length = 30)
	public String getNumerprocedury() {
		return this.numerprocedury;
	}

	public void setNumerprocedury(String numerprocedury) {
		this.numerprocedury = numerprocedury;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "DATADEFINICJI", length = 7)
	public Date getDatadefinicji() {
		return this.datadefinicji;
	}

	public void setDatadefinicji(Date datadefinicji) {
		this.datadefinicji = datadefinicji;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "DATAUTWORZENIA", length = 7)
	public Date getDatautworzenia() {
		return this.datautworzenia;
	}

	public void setDatautworzenia(Date datautworzenia) {
		this.datautworzenia = datautworzenia;
	}

	@Column(name = "LOGIN", length = 30)
	public String getLogin() {
		return this.login;
	}

	public void setLogin(String login) {
		this.login = login;
	}

	@Column(name = "OPIS", length = 500)
	public String getOpis() {
		return this.opis;
	}

	public void setOpis(String opis) {
		this.opis = opis;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "portfele")
	public Set<Sawskladzie> getSawskladzies() {
		return this.sawskladzies;
	}

	public void setSawskladzies(Set<Sawskladzie> sawskladzies) {
		this.sawskladzies = sawskladzies;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "portfele")
	public Set<Wycenyportfeli> getWycenyportfelis() {
		return this.wycenyportfelis;
	}

	public void setWycenyportfelis(Set<Wycenyportfeli> wycenyportfelis) {
		this.wycenyportfelis = wycenyportfelis;
	}

	@ManyToMany(fetch = FetchType.LAZY)
	@JoinTable(name = "OKRESLAJASPOSOBYWYCEN", schema = "MARCIN", joinColumns = { @JoinColumn(name = "NAZWAPORTFELA", nullable = false, updatable = false) }, inverseJoinColumns = { @JoinColumn(name = "IDPLANUWYCENY", nullable = false, updatable = false) })
	public Set<Planywycen> getPlanywycens() {
		return this.planywycens;
	}

	public void setPlanywycens(Set<Planywycen> planywycens) {
		this.planywycens = planywycens;
	}

}
